package com.ruoyi.address.mapper;

import java.util.List;
import com.ruoyi.address.domain.Address;
import com.ruoyi.address.domain.vo.AddressVo;

/**
 * 收货地址信息Mapper接口
 * 
 * @author ruoyi
 * @date 2025-05-31
 */
public interface AddressMapper 
{
    /**
     * 查询收货地址信息
     * 
     * @param addressId 收货地址信息主键
     * @return 收货地址信息
     */
    public Address selectAddressByAddressId(Long addressId);

    /**
     * 查询收货地址信息列表
     * 
     * @param address 收货地址信息
     * @return 收货地址信息集合
     */
    public List<Address> selectAddressList(Address address);

    /**
     * 新增收货地址信息
     * 
     * @param address 收货地址信息
     * @return 结果
     */
    public int insertAddress(Address address);

    /**
     * 修改收货地址信息
     * 
     * @param address 收货地址信息
     * @return 结果
     */
    public int updateAddress(Address address);

    /**
     * 删除收货地址信息
     * 
     * @param addressId 收货地址信息主键
     * @return 结果
     */
    public int deleteAddressByAddressId(Long addressId);

    /**
     * 批量删除收货地址信息
     * 
     * @param addressIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAddressByAddressIds(Long[] addressIds);

    /**
     * 展示收货地址信息的创建人信息
     *
     * @return AddressVo集合
     */
    public List<AddressVo> selectAddressVoList(Address address);
}
